package com.irdstudio.efp.flow.service.dao;

import java.util.List;

import com.irdstudio.efp.flow.service.domain.InstFlowProcess;
import org.apache.ibatis.annotations.Param;

/**
 * 
 * 
 * 
 * @author Cytus_
 * @since 2018年5月7日 下午8:42:29
 * @version 1.0
 *
 */
public interface InstFlowProcessDao {

	public int insertInstFlowProcess(InstFlowProcess process);
	
	
	public InstFlowProcess queryByNodeInstanceId(String nodeInstanceid);
	
	/**
	 * 更新审批节点信息
	 * @param process
	 * @return
	 */
	public int updateNodeStatusByInstNodeId(InstFlowProcess process);
	
	/**
	 * 更新审批信息
	 * @param process
	 * @return
	 */
	public int updateApproveInfoByNodeInstId(InstFlowProcess process);
	
	/**
	 * 更新审批人信息
	 * @param process
	 * @return
	 */
	public int updateAprvUserInfoByNodeInstId(InstFlowProcess process);
	
	public List<InstFlowProcess> queryAllByBizSerno(String bizSerno);

	public List<InstFlowProcess> queryAllByBizSernoAndConditon(InstFlowProcess process);

	public int countTasksNum(@Param("userCode") String userCode);

	public int deleteByPk(InstFlowProcess process);

	public int queryByUserInfo(InstFlowProcess process);

	public String queryStageByInstNodeId(@Param("instNodeId") String instNodeId);

}
